/*global pi */

pi.mod.config([{
	name: "pi.browser",
	path: "browser.js",
	runDepend: ["pi.vcall"]
}, {
	name: "pi.wke",
	path: "wke.js",
	loadDepend: ["pi.vcall"]
}, {
	name: "pi.cbuffer",
	path: "cbuffer.js",
	loadDepend: ["pi.vcall"]
}, {
	name: "pi.debug",
	path: "debug.js",
	runDepend: ["pi.vcall"]
}, {
	name: "pi.dvector",
	path: "dvector.js",
	loadDepend: ["pi.vcall"]
}, {
	name: "pi.vector",
	path: "vector.js",
	loadDepend: ["pi.vcall"]
}, {
	name: "pi.file",
	path: "file.js",
	loadDepend: ["pi.vcall"]
}, {
	name: "pi.image",
	path: "image.js",
	loadDepend: ["pi.vcall"]
}, {
	name: "pi.jsbuffer",
	path: "jsbuffer.js",
	runDepend: ["pi.vcall", "pi.string"]
}, {
	name: "pi.jsByteBuffer",
	path: "jsbytebuffer.js",
	runDepend: ["pi.vcall", "pi.string", "pi.util"]
}, {
	name: "pi.lang",
	path: "lang.js"
}, {
	name: "pi.async",
	path: "async.js",
	runDepend: ["pi.lang"]
}, {
	name: "pi.mem",
	path: "mem.js",
	loadDepend: ["pi.vcall"]
}, {
	name: "pi.res",
	path: "res.js",
	loadDepend: ["pi.dvector", "pi.sysmod", "pi.lang"],
	runDepend: ["pi.vcall", "pi.worker.handle", "pi.mem", "pi.render.t3d", "pi.async"]
}, {
	name: "pi.str",
	path: "str.js"
}, {
	name: "pi.string",
	path: "string.js",
	runDepend: ["pi.vcall", "pi.lang", "pi.util"]
}, {
	name: "pi.sysmod",
	path: "sysmod.js",
	loadDepend: ["pi.vcall"]
}, {
	name: "pi.util",
	path: "util.js"
}, {
	name: "pi.vcall",
	path: "vcall.js"
}, {
	name: "pi.event",
	path: "event.js"
}, {
	name: "pi.vfs",
	path: "vfs.js",
	loadDepend: ["pi.vcall"],
	runDepend: ["pi.mem"]
}, {
	name: "pi.template",
	path: "template.js",
	runDepend: ["pi.lang", "pi.str"]
}, {
	name: "pi.html",
	path: "html.js",
	runDepend: ["pi.lang"]
}, {
	name: "pi.os.winh",
	path: "os/winh.js"
}, {
	name: "pi.os.util",
	path: "os/util.js",
	runDepend: ["pi.vcall", "pi.lang", "pi.os.window"]
}, {
	name: "pi.os.ui",
	path: "os/ui.js",
	runDepend: ["pi.vcall", "pi.jsByteBuffer", "pi.util"]
}, {
	name: "pi.os.window",
	path: "os/window.js",
	loadDepend: ["pi.vcall"],
	runDepend: ["pi.vcall", "pi.jsByteBuffer", "pi.util", "pi.os.winh"]
}, {
	name: "pi.worker.load",
	path: "worker/load.js",
	runDepend: ["pi.lang", "pi.vfs"]
}, {
	name: "pi.worker.compute",
	path: "worker/compute.js",
	runDepend: ["pi.lang", "pi.render.t3d"]
}, {
	name: "pi.worker.handle",
	path: "worker/handle.js",
	runDepend: ["pi.lang"]
}, {
	name: "pi.worker.parse",
	path: "worker/parse.js",
	runDepend: ["pi.lang", "pi.render.t3d"]
}, {
	name: "pi.worker.render",
	path: "worker/render.js",
	runDepend: ["pi.lang", "pi.render.t3d"]
}, {
	name: "pi.math.vec2",
	path: "math/vec2.js"
}, {
	name: "pi.math.vec3",
	path: "math/vec3.js"
}, {
	name: "pi.math.mat4",
	path: "math/mat4.js",
	loadDepend: ["pi.lang"],
	runDepend: ["pi.lang", "pi.math.vec3", "pi.math.quat"]
}, {
	name: "pi.math.quat",
	path: "math/quat.js",
	runDepend: ["pi.math.vec3", "pi.math.mat4"]
}, {
	name: "pi.math.plane",
	path: "math/plane.js",
	runDepend: ["pi.math.vec3"]
}, {
	name: "pi.math.random",
	path: "math/random.js",
	runDepend: ["pi.lang"]
}, {
	name: "pi.render.camera",
	path: "render/camera.js",
	loadDepend: ["pi.math.vec3", "pi.math.quat"],
	runDepend: ["pi.math.vec3", "pi.math.mat4", "pi.math.quat", "pi.math.plane"]
}, {
	name: "pi.render.t3d",
	path: "render/t3d.js",
	loadDepend: ["pi.vcall"]
}, {
	name: "pi.render.run",
	path: "render/run.js",
	runDepend: ["pi.lang", "pi.render.t3d", "pi.cbuffer", "pi.worker.handle", "pi.browser", "pi.math.vec3", "pi.math.quat"]
}, {
	name: "pi.ui.tooltip",
	path: "ui/tooltip.js",
	runDepend: ["pi.lang", "pi.html"]
}, {
	name: "pi.ui.button",
	path: "ui/button.js",
	runDepend: ["pi.lang", "pi.html"]
}, {
	name: "pi.ui.event",
	path: "ui/event.js",
	runDepend: ["pi.html", "pi.event"]
}, {
	name: "pi.ui.page",
	path: "ui/page.js",
	runDepend: ["pi.str", "pi.res", "pi.template"]
}, {
	name: "pi.forelet",
	path: "ui/forelet.js",
	loadDepend: ["pi.lang", "pi.ui.tooltip"],
	runDepend: ["pi.html", "pi.template", "pi.ui.page", "pi.ui.event", "pi.ui.button"]
}, {
	name: "pi.scene.creators",
	path: "scene/creators.js",
	loadDepend: ["pi.vcall"],
	runDepend: ["pi.res", "pi.lang", "pi.render.t3d"]
}, {
	name: "pi.scene.query",
	path: "scene/query.js",
	loadDepend: ["pi.vcall", "pi.vector", "pi.cbuffer"],
	runDepend: ["pi.scene"]
}, {
	name: "pi.scene.ray",
	path: "scene/ray.js",
	runDepend: ["pi.math.vec3"]
}, {
	name: "pi.scene",
	path: "scene/scene.js",
	loadDepend: ["pi.vcall", "pi.vector", "pi.lang"],
	runDepend: ["pi.scene.ray", "pi.math.vec3", "pi.math.mat4", "pi.math.quat", "pi.scene.creators", "pi.scene.nav", "pi.scene.query"]
}, {
	name: "pi.scene.dbg",
	path: "scene/dbg.js",
	loadDepend: ["pi.vcall"],
	runDepend: ["pi.scene"]
}, {
	name: "pi.timeline",
	path: "timeline.js",
	runDepend: ["pi.lang"]
}, {
	name: "pi.scene.movement",
	path: "scene/movement.js",
	runDepend: ["pi.timeline"]
}, {
	name: "pi.scene.camsys",
	path: "scene/camsys.js"
}, {
	name: "pi.scene.nav",
	path: "scene/nav.js"
}], pi.config.libPath);